package deepr.anno;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Property {


    String name() default "";

    Class<?> schema() default Schema.class;

    Type type() default Type.NULL;

    Class<?> handler() default Schema.class;

    String[] handlerArgs() default {};

    Class<?> relation() default Schema.class;

    Type point() default Type.IN;

    Type value() default Type.NULL;

    String desc() default "";

    String relationLabel() default "";

    String forProperty() default "";

    boolean primaryKey() default false;


}
